msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ Non-Overlap Check
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
MIN2(x, .2(y, z)) -> MIN2(y, z)
DEL2(x, .2(y, z)) -> DEL2(x, z)
MSORT1(.2(x, y)) -> DEL2(min2(x, y), .2(x, y))
MSORT1(.2(x, y)) -> MIN2(x, y)
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
MIN2(x, .2(y, z)) -> MIN2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
MIN2(x, .2(y, z)) -> MIN2(y, z)
DEL2(x, .2(y, z)) -> DEL2(x, z)
MSORT1(.2(x, y)) -> DEL2(min2(x, y), .2(x, y))
MSORT1(.2(x, y)) -> MIN2(x, y)
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
MIN2(x, .2(y, z)) -> MIN2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
DEL2(x, .2(y, z)) -> DEL2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
DEL2(x, .2(y, z)) -> DEL2(x, z)
[DEL1, .1]
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
MIN2(x, .2(y, z)) -> MIN2(y, z)
MIN2(x, .2(y, z)) -> MIN2(x, z)
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
MIN2(x, .2(y, z)) -> MIN2(y, z)
MIN2(x, .2(y, z)) -> MIN2(x, z)
.2 > MIN1
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
MSORT1(.2(x, y)) -> MSORT1(del2(min2(x, y), .2(x, y)))
[.2, min1, <=1] > MSORT1 > nil
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
del2(x, nil) -> nil
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
msort1(nil) -> nil
msort1(.2(x, y)) -> .2(min2(x, y), msort1(del2(min2(x, y), .2(x, y))))
min2(x, nil) -> x
min2(x, .2(y, z)) -> if3(<=2(x, y), min2(x, z), min2(y, z))
del2(x, nil) -> nil
del2(x, .2(y, z)) -> if3(=2(x, y), z, .2(y, del2(x, z)))
msort1(nil)
msort1(.2(x0, x1))
min2(x0, nil)
min2(x0, .2(x1, x2))
del2(x0, nil)
del2(x0, .2(x1, x2))